<?php


/*
* Copyright (c) 2008-2016 vip.com, All Rights Reserved.
*
* Powered by com.vip.osp.osp-idlc-2.5.11.
*
*/

namespace com\vip\xstore\wop\inner\wm\service;

class InfWmsRevInfoSModel {
	
	static $_TSPEC;
	public $infWmsRevInfoSId = null;
	public $transactionId = null;
	public $responseCode = null;
	public $remark = null;
	public $deliveryOrder = null;
	public $pjbestBoxNo = null;
	public $po = null;
	public $itemCode = null;
	public $iqcQty = null;
	public $shelvesQty = null;
	public $receiveCompleteTime = null;
	public $handleStatus = null;
	public $handleRemark = null;
	public $rowMd5 = null;
	public $createdByUser = null;
	public $createdOffice = null;
	public $createdDtmLoc = null;
	public $createdTimeZone = null;
	public $updatedByUser = null;
	public $updatedOffice = null;
	public $updatedDtmLoc = null;
	public $updatedTimeZone = null;
	public $recordVersion = null;
	public $isDelete = null;
	public $receiptNo = null;
	public $orgSystemPoNo = null;
	public $ztHandleStatus = null;
	public $ztHandleRemark = null;
	
	public function __construct($vals=null){
		
		if (!isset(self::$_TSPEC)){
			
			self::$_TSPEC = array(
			1 => array(
			'var' => 'infWmsRevInfoSId'
			),
			2 => array(
			'var' => 'transactionId'
			),
			3 => array(
			'var' => 'responseCode'
			),
			4 => array(
			'var' => 'remark'
			),
			5 => array(
			'var' => 'deliveryOrder'
			),
			6 => array(
			'var' => 'pjbestBoxNo'
			),
			7 => array(
			'var' => 'po'
			),
			8 => array(
			'var' => 'itemCode'
			),
			9 => array(
			'var' => 'iqcQty'
			),
			10 => array(
			'var' => 'shelvesQty'
			),
			11 => array(
			'var' => 'receiveCompleteTime'
			),
			12 => array(
			'var' => 'handleStatus'
			),
			13 => array(
			'var' => 'handleRemark'
			),
			14 => array(
			'var' => 'rowMd5'
			),
			15 => array(
			'var' => 'createdByUser'
			),
			16 => array(
			'var' => 'createdOffice'
			),
			17 => array(
			'var' => 'createdDtmLoc'
			),
			18 => array(
			'var' => 'createdTimeZone'
			),
			19 => array(
			'var' => 'updatedByUser'
			),
			20 => array(
			'var' => 'updatedOffice'
			),
			21 => array(
			'var' => 'updatedDtmLoc'
			),
			22 => array(
			'var' => 'updatedTimeZone'
			),
			23 => array(
			'var' => 'recordVersion'
			),
			24 => array(
			'var' => 'isDelete'
			),
			25 => array(
			'var' => 'receiptNo'
			),
			26 => array(
			'var' => 'orgSystemPoNo'
			),
			27 => array(
			'var' => 'ztHandleStatus'
			),
			28 => array(
			'var' => 'ztHandleRemark'
			),
			
			);
			
		}
		
		if (is_array($vals)){
			
			
			if (isset($vals['infWmsRevInfoSId'])){
				
				$this->infWmsRevInfoSId = $vals['infWmsRevInfoSId'];
			}
			
			
			if (isset($vals['transactionId'])){
				
				$this->transactionId = $vals['transactionId'];
			}
			
			
			if (isset($vals['responseCode'])){
				
				$this->responseCode = $vals['responseCode'];
			}
			
			
			if (isset($vals['remark'])){
				
				$this->remark = $vals['remark'];
			}
			
			
			if (isset($vals['deliveryOrder'])){
				
				$this->deliveryOrder = $vals['deliveryOrder'];
			}
			
			
			if (isset($vals['pjbestBoxNo'])){
				
				$this->pjbestBoxNo = $vals['pjbestBoxNo'];
			}
			
			
			if (isset($vals['po'])){
				
				$this->po = $vals['po'];
			}
			
			
			if (isset($vals['itemCode'])){
				
				$this->itemCode = $vals['itemCode'];
			}
			
			
			if (isset($vals['iqcQty'])){
				
				$this->iqcQty = $vals['iqcQty'];
			}
			
			
			if (isset($vals['shelvesQty'])){
				
				$this->shelvesQty = $vals['shelvesQty'];
			}
			
			
			if (isset($vals['receiveCompleteTime'])){
				
				$this->receiveCompleteTime = $vals['receiveCompleteTime'];
			}
			
			
			if (isset($vals['handleStatus'])){
				
				$this->handleStatus = $vals['handleStatus'];
			}
			
			
			if (isset($vals['handleRemark'])){
				
				$this->handleRemark = $vals['handleRemark'];
			}
			
			
			if (isset($vals['rowMd5'])){
				
				$this->rowMd5 = $vals['rowMd5'];
			}
			
			
			if (isset($vals['createdByUser'])){
				
				$this->createdByUser = $vals['createdByUser'];
			}
			
			
			if (isset($vals['createdOffice'])){
				
				$this->createdOffice = $vals['createdOffice'];
			}
			
			
			if (isset($vals['createdDtmLoc'])){
				
				$this->createdDtmLoc = $vals['createdDtmLoc'];
			}
			
			
			if (isset($vals['createdTimeZone'])){
				
				$this->createdTimeZone = $vals['createdTimeZone'];
			}
			
			
			if (isset($vals['updatedByUser'])){
				
				$this->updatedByUser = $vals['updatedByUser'];
			}
			
			
			if (isset($vals['updatedOffice'])){
				
				$this->updatedOffice = $vals['updatedOffice'];
			}
			
			
			if (isset($vals['updatedDtmLoc'])){
				
				$this->updatedDtmLoc = $vals['updatedDtmLoc'];
			}
			
			
			if (isset($vals['updatedTimeZone'])){
				
				$this->updatedTimeZone = $vals['updatedTimeZone'];
			}
			
			
			if (isset($vals['recordVersion'])){
				
				$this->recordVersion = $vals['recordVersion'];
			}
			
			
			if (isset($vals['isDelete'])){
				
				$this->isDelete = $vals['isDelete'];
			}
			
			
			if (isset($vals['receiptNo'])){
				
				$this->receiptNo = $vals['receiptNo'];
			}
			
			
			if (isset($vals['orgSystemPoNo'])){
				
				$this->orgSystemPoNo = $vals['orgSystemPoNo'];
			}
			
			
			if (isset($vals['ztHandleStatus'])){
				
				$this->ztHandleStatus = $vals['ztHandleStatus'];
			}
			
			
			if (isset($vals['ztHandleRemark'])){
				
				$this->ztHandleRemark = $vals['ztHandleRemark'];
			}
			
			
		}
		
	}
	
	
	public function getName(){
		
		return 'InfWmsRevInfoSModel';
	}
	
	public function read($input){
		
		$input->readStructBegin();
		while(true){
			
			$schemeField = $input->readFieldBegin();
			if ($schemeField == null) break;
			$needSkip = true;
			
			
			if ("infWmsRevInfoSId" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->infWmsRevInfoSId); 
				
			}
			
			
			
			
			if ("transactionId" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->transactionId); 
				
			}
			
			
			
			
			if ("responseCode" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->responseCode);
				
			}
			
			
			
			
			if ("remark" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->remark);
				
			}
			
			
			
			
			if ("deliveryOrder" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->deliveryOrder);
				
			}
			
			
			
			
			if ("pjbestBoxNo" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->pjbestBoxNo);
				
			}
			
			
			
			
			if ("po" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->po);
				
			}
			
			
			
			
			if ("itemCode" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->itemCode);
				
			}
			
			
			
			
			if ("iqcQty" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->iqcQty); 
				
			}
			
			
			
			
			if ("shelvesQty" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->shelvesQty); 
				
			}
			
			
			
			
			if ("receiveCompleteTime" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->receiveCompleteTime); 
				
			}
			
			
			
			
			if ("handleStatus" == $schemeField){
				
				$needSkip = false;
				$input->readByte($this->handleStatus); 
				
			}
			
			
			
			
			if ("handleRemark" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->handleRemark);
				
			}
			
			
			
			
			if ("rowMd5" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->rowMd5);
				
			}
			
			
			
			
			if ("createdByUser" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->createdByUser);
				
			}
			
			
			
			
			if ("createdOffice" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->createdOffice);
				
			}
			
			
			
			
			if ("createdDtmLoc" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->createdDtmLoc); 
				
			}
			
			
			
			
			if ("createdTimeZone" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->createdTimeZone);
				
			}
			
			
			
			
			if ("updatedByUser" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->updatedByUser);
				
			}
			
			
			
			
			if ("updatedOffice" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->updatedOffice);
				
			}
			
			
			
			
			if ("updatedDtmLoc" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->updatedDtmLoc); 
				
			}
			
			
			
			
			if ("updatedTimeZone" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->updatedTimeZone);
				
			}
			
			
			
			
			if ("recordVersion" == $schemeField){
				
				$needSkip = false;
				$input->readI64($this->recordVersion); 
				
			}
			
			
			
			
			if ("isDelete" == $schemeField){
				
				$needSkip = false;
				$input->readByte($this->isDelete); 
				
			}
			
			
			
			
			if ("receiptNo" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->receiptNo);
				
			}
			
			
			
			
			if ("orgSystemPoNo" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->orgSystemPoNo);
				
			}
			
			
			
			
			if ("ztHandleStatus" == $schemeField){
				
				$needSkip = false;
				$input->readByte($this->ztHandleStatus); 
				
			}
			
			
			
			
			if ("ztHandleRemark" == $schemeField){
				
				$needSkip = false;
				$input->readString($this->ztHandleRemark);
				
			}
			
			
			
			if($needSkip){
				
				\Osp\Protocol\ProtocolUtil::skip($input);
			}
			
			$input->readFieldEnd();
		}
		
		$input->readStructEnd();
		
		
		
	}
	
	public function write($output){
		
		$xfer = 0;
		$xfer += $output->writeStructBegin();
		
		if($this->infWmsRevInfoSId !== null) {
			
			$xfer += $output->writeFieldBegin('infWmsRevInfoSId');
			$xfer += $output->writeI64($this->infWmsRevInfoSId);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->transactionId !== null) {
			
			$xfer += $output->writeFieldBegin('transactionId');
			$xfer += $output->writeI64($this->transactionId);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->responseCode !== null) {
			
			$xfer += $output->writeFieldBegin('responseCode');
			$xfer += $output->writeString($this->responseCode);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->remark !== null) {
			
			$xfer += $output->writeFieldBegin('remark');
			$xfer += $output->writeString($this->remark);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->deliveryOrder !== null) {
			
			$xfer += $output->writeFieldBegin('deliveryOrder');
			$xfer += $output->writeString($this->deliveryOrder);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->pjbestBoxNo !== null) {
			
			$xfer += $output->writeFieldBegin('pjbestBoxNo');
			$xfer += $output->writeString($this->pjbestBoxNo);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->po !== null) {
			
			$xfer += $output->writeFieldBegin('po');
			$xfer += $output->writeString($this->po);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->itemCode !== null) {
			
			$xfer += $output->writeFieldBegin('itemCode');
			$xfer += $output->writeString($this->itemCode);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->iqcQty !== null) {
			
			$xfer += $output->writeFieldBegin('iqcQty');
			$xfer += $output->writeI64($this->iqcQty);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->shelvesQty !== null) {
			
			$xfer += $output->writeFieldBegin('shelvesQty');
			$xfer += $output->writeI64($this->shelvesQty);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->receiveCompleteTime !== null) {
			
			$xfer += $output->writeFieldBegin('receiveCompleteTime');
			$xfer += $output->writeI64($this->receiveCompleteTime);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->handleStatus !== null) {
			
			$xfer += $output->writeFieldBegin('handleStatus');
			$xfer += $output->writeByte($this->handleStatus);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->handleRemark !== null) {
			
			$xfer += $output->writeFieldBegin('handleRemark');
			$xfer += $output->writeString($this->handleRemark);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->rowMd5 !== null) {
			
			$xfer += $output->writeFieldBegin('rowMd5');
			$xfer += $output->writeString($this->rowMd5);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->createdByUser !== null) {
			
			$xfer += $output->writeFieldBegin('createdByUser');
			$xfer += $output->writeString($this->createdByUser);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->createdOffice !== null) {
			
			$xfer += $output->writeFieldBegin('createdOffice');
			$xfer += $output->writeString($this->createdOffice);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->createdDtmLoc !== null) {
			
			$xfer += $output->writeFieldBegin('createdDtmLoc');
			$xfer += $output->writeI64($this->createdDtmLoc);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->createdTimeZone !== null) {
			
			$xfer += $output->writeFieldBegin('createdTimeZone');
			$xfer += $output->writeString($this->createdTimeZone);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->updatedByUser !== null) {
			
			$xfer += $output->writeFieldBegin('updatedByUser');
			$xfer += $output->writeString($this->updatedByUser);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->updatedOffice !== null) {
			
			$xfer += $output->writeFieldBegin('updatedOffice');
			$xfer += $output->writeString($this->updatedOffice);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->updatedDtmLoc !== null) {
			
			$xfer += $output->writeFieldBegin('updatedDtmLoc');
			$xfer += $output->writeI64($this->updatedDtmLoc);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->updatedTimeZone !== null) {
			
			$xfer += $output->writeFieldBegin('updatedTimeZone');
			$xfer += $output->writeString($this->updatedTimeZone);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->recordVersion !== null) {
			
			$xfer += $output->writeFieldBegin('recordVersion');
			$xfer += $output->writeI64($this->recordVersion);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->isDelete !== null) {
			
			$xfer += $output->writeFieldBegin('isDelete');
			$xfer += $output->writeByte($this->isDelete);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->receiptNo !== null) {
			
			$xfer += $output->writeFieldBegin('receiptNo');
			$xfer += $output->writeString($this->receiptNo);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->orgSystemPoNo !== null) {
			
			$xfer += $output->writeFieldBegin('orgSystemPoNo');
			$xfer += $output->writeString($this->orgSystemPoNo);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->ztHandleStatus !== null) {
			
			$xfer += $output->writeFieldBegin('ztHandleStatus');
			$xfer += $output->writeByte($this->ztHandleStatus);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		if($this->ztHandleRemark !== null) {
			
			$xfer += $output->writeFieldBegin('ztHandleRemark');
			$xfer += $output->writeString($this->ztHandleRemark);
			
			$xfer += $output->writeFieldEnd();
		}
		
		
		$xfer += $output->writeFieldStop();
		$xfer += $output->writeStructEnd();
		return $xfer;
	}
	
}

?>